Generalizers: New Metaobjects for Generalized Dispatch

نویسندگان

  • Christophe Rhodes
  • Jan Moringen
  • David Lichteblau
چکیده

This paper introduces a new metaobject, the generalizer, which complements the existing specializer metaobject. With the help of examples, we show that this metaobject allows for the efficient implementation of complex non-classbased dispatch within the framework of existing metaobject protocols. We present our modifications to the generic function invocation protocol from the Art of the Metaobject Protocol ; in combination with previous work, this produces a fully-functional extension of the existing mechanism for method selection and combination, including support for method combination completely independent from method selection. We discuss our implementation, within the SBCL implementation of Common Lisp, and in that context compare the performance of the new protocol with the standard one, demonstrating that the new protocol can be tolerably efficient. Report-No.: http://eprints.gold.ac.uk/id/eprint/9924

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Efficient Multimethods in a Single Dispatch Language

Smalltalk-80 is a pure object-oriented language in which messages are dispatched according to the class of the receiver, or first argument, of a message. Object-oriented languages that support multimethods dispatch messages using all their arguments. While Smalltalk does not support multimethods, Smalltalk's reflective facilities allow programmers to efficiently add them to the language. This p...

متن کامل

A Metaobject Architecture for Fault-Tolerant Distributed Systems: The FRIENDS Approach

Abstract: The FRIENDS system developed at LAAS-CNRS is a metalevel architecture providing libraries of metaobjects for fault tolerance, secure communications and group-based distributed applications. The use of metaobjects provides a nice separation of concerns between mechanisms and applications. Metaobjects can be used transparently by applications and can be composed according to the needs o...

متن کامل

Friends - A Flexible Architecture for Implementing Fault Tolerant and Secure Distributed Applications

FRIENDS is a software-based architecture for implementing faulttolerant and, to some extent, secure applications. This architecture is composed of sub-systems and libraries of metaobjects. Transparency and separation of concerns is provided not only to the application programmer but also to the programmers implementing metaobjects for fault tolerance, secure communication and distribution. Comm...

متن کامل

Is Composition of Metaobjects = Aspect Oriented Programming

This paper proposes to implement aspects as metaobjects and using run time aspect weaving. The metaobjects are metaobjects as defined in computational reflection and can be exchanged dynamically at run time. In contract to computational reflection, where only one metaobject exist, we have extended the architecture to allow multiple metaobjects and composition.

متن کامل

A General Framework for Inheritance Management and Method Dispatch in Object-Oriented Languages

This paperpresents the DT Framework, a collection of object-oriented classes representing a generalized framework for inheritance management and table-based method dispatch. It demonstrates how most existing table-based dispatch techniques can be generalized and made incremental, so that relevant entries in the dispatch table are modified each time a selector or class hierarchy link is added or...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1403.2765  شماره 

صفحات  -

تاریخ انتشار 2014